package org.dfg.corejava.designPattern.decorator;

/**
 * 装饰模式 <br/>
 * 实现一个适配器，继承自接口 <br/>
 * 每添加一个功能，就实现一个Decorator子类 <br/>
 * 构造方法为父类业务类赋值 <br/>
 * 目标方法执行父类方法 <br/>
 * 其效果就是： 每个适配器，都接受了目标实现类，每个适配器的目标方法，都依次调用了实现类的目标方法
 */
public class TestDecorator {
	public static void main(String[] args) {
		Greet g = new GreetAfter2(new GreetAfter1(new GreetBefore(new GreetImpl())));
		g.say();
	}
}
